TL;DR Больше микробенчмарков богу микробенчмарков!
Дошли руки до микробенчмарков, где известные фокусники всея Руси -- Лев Валкин
и Сергей Зефиров тролят байтойобов и показывают, что если разложить Data Flow в
свободные монады то получится что стрим можно выгребать пачками (генерируются
MMX инструкции). Сегодня мы покажем, что в нашем цирке (Rust) иллюзионисты не
хуже, а может быть даже и лучше.
Итак, как говорят хранители интернета, мы можем это написать двумя способами:
1. Циклы
2. Итераторы
Первое обычно относят к байтойобским языкам, а второе к чистым аппликативным,
так как там это имеет смысл и реально сразу помогает для векторизации. Мы же
напишем на расте и так и так и проверим:
Теперь сишечка:
Теперь божественная "неоптимизированная" ГеАшЦешечка
По требованию трудящихся на арену выходит божественный ЛуаДЖИТик:
Swift и Go -- ниже дна (С++). Поэтому эту хуйню даже ставить на машину не буду.
Свифт лично мне нравится и желаю ему взросления, но его не будет так как Apple
не технологичная компания уже (хотя за LLVM низкий поклон). С Go чуда не будет
-- язык откровенно делался плохим (как и С++), поэтому его любят гидроцефалы с
лоботомией пишущих лапшу вида if err != nil. Если видете чувака, который
рекламиурет Go -- знайте, ебанат, инфа 100%. До существования Go эти люди
называли себя системными администраторами (POSIX, KISS, UNIX, Керниган и Ритчи
головного мозга), теперь гугл их пересадила из беша в гошечку. А мы вернемся из
благодатного оазиса рассовой ненависти в лоно микробенчмарков.
Раздача шампанского:
С Новым Годом, Сережа и Лев!
Всем желаю успешного байтойобства и глубокого аппликативного фьюжена в 2017!